package com.xqb.modules.domain.po;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.xqb.common.annotation.Excel;
import com.xqb.common.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 营业执照对象 ins_business_license
 * 
 * @author xqb
 * @date 2024-10-14
 */
public class InsBusinessLicense extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** id */
    private Long id;

    /** 营业执照编号 */
    @Excel(name = "营业执照编号")
    private String licenseNumber;

    /** 公司名称 */
    @Excel(name = "公司名称")
    private String companyName;

    /** 注册地址 */
    @Excel(name = "注册地址")
    private String registrationAddress;

    /** 成立日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "成立日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date establishmentDate;

    /** 法定代表人 */
    @Excel(name = "法定代表人")
    private String legalRepresentative;

    /** 注册资本（万元） */
    @Excel(name = "注册资本", readConverterExp = "万=元")
    private BigDecimal registeredCapital;

    /** 经营范围 */
    @Excel(name = "经营范围")
    private String businessScope;

    /** 营业期限 */
    @Excel(name = "营业期限")
    private String businessPeriod;

    /** 营业执照类型 */
    @Excel(name = "营业执照类型")
    private String licenseType;

    /** 发证机关 */
    @Excel(name = "发证机关")
    private String issuingAuthority;

    /** 发证日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "发证日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date issueDate;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setLicenseNumber(String licenseNumber) 
    {
        this.licenseNumber = licenseNumber;
    }

    public String getLicenseNumber() 
    {
        return licenseNumber;
    }
    public void setCompanyName(String companyName) 
    {
        this.companyName = companyName;
    }

    public String getCompanyName() 
    {
        return companyName;
    }
    public void setRegistrationAddress(String registrationAddress) 
    {
        this.registrationAddress = registrationAddress;
    }

    public String getRegistrationAddress() 
    {
        return registrationAddress;
    }
    public void setEstablishmentDate(Date establishmentDate) 
    {
        this.establishmentDate = establishmentDate;
    }

    public Date getEstablishmentDate() 
    {
        return establishmentDate;
    }
    public void setLegalRepresentative(String legalRepresentative) 
    {
        this.legalRepresentative = legalRepresentative;
    }

    public String getLegalRepresentative() 
    {
        return legalRepresentative;
    }
    public void setRegisteredCapital(BigDecimal registeredCapital) 
    {
        this.registeredCapital = registeredCapital;
    }

    public BigDecimal getRegisteredCapital() 
    {
        return registeredCapital;
    }
    public void setBusinessScope(String businessScope) 
    {
        this.businessScope = businessScope;
    }

    public String getBusinessScope() 
    {
        return businessScope;
    }
    public void setBusinessPeriod(String businessPeriod) 
    {
        this.businessPeriod = businessPeriod;
    }

    public String getBusinessPeriod() 
    {
        return businessPeriod;
    }
    public void setLicenseType(String licenseType) 
    {
        this.licenseType = licenseType;
    }

    public String getLicenseType() 
    {
        return licenseType;
    }
    public void setIssuingAuthority(String issuingAuthority) 
    {
        this.issuingAuthority = issuingAuthority;
    }

    public String getIssuingAuthority() 
    {
        return issuingAuthority;
    }
    public void setIssueDate(Date issueDate) 
    {
        this.issueDate = issueDate;
    }

    public Date getIssueDate() 
    {
        return issueDate;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("licenseNumber", getLicenseNumber())
            .append("companyName", getCompanyName())
            .append("registrationAddress", getRegistrationAddress())
            .append("establishmentDate", getEstablishmentDate())
            .append("legalRepresentative", getLegalRepresentative())
            .append("registeredCapital", getRegisteredCapital())
            .append("businessScope", getBusinessScope())
            .append("businessPeriod", getBusinessPeriod())
            .append("licenseType", getLicenseType())
            .append("issuingAuthority", getIssuingAuthority())
            .append("issueDate", getIssueDate())
            .append("createTime", getCreateTime())
            .append("updateTime", getUpdateTime())
            .toString();
    }
}
